Push expressions through layout plans - #9166
Conversation
Merging this PR will not alter performance
Comparing Footnotes
|
4dced78 to
7968c7e
Compare
7968c7e to
a9043d5
Compare
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
Signed-off-by: Joe Isaacs <joe.isaacs@live.co.uk>
a9043d5 to
bda6747
Compare
Summary
Plan::optimize_expressionhook with static typed parent-child rules(ExpressionPlan, StructPlan),(ExpressionPlan, DictPlan),(ExpressionPlan, ChunkedPlan), and(ExpressionPlan, RowIdxPlan)Stack
This draft is stacked on #9196 and targets
vortex-plan-rules.Example
Before optimization:
After optimization, the row-index predicate is evaluated by
RowIdxValuesPlan, the field predicates are pushed into the corresponding struct children, and a residual expression combines the partition outputs. No synthetic struct-partition plan node is introduced.Safety
Checks
cargo test -p vortex-layout— 209 passedcargo clippy -p vortex-layout --all-targets --all-features -- -D warningscargo +nightly fmt --all -- --checkgit diff --check